In the Peripheral Component Interconnect Express (PCIe) ecosystem, a hot plug may refer to adding and/or removing a PCIe device to and/or from a PCIe port of a host, without powering down the host or the port. For example, hot plugging may comprise a hot add and/or a hot removal of PCIe devices. A hot plug may be software assisted (e.g., when the software may have advanced knowledge of the imminent hot plug, and has an opportunity to prepare for the hot plug). A hot plug may also be a surprise hot plug, where no advance notice is provided to the system prior to the occurrence of the hot plug.
In the PCIe ecosystem, a PCIe port may enter a low power mode (e.g., a L1 state), e.g., to save power. It may be useful that the surprise hot plug be implemented seamlessly in the regular power mode (e.g., a L0 state), as well as the low power mode of the PCIe host port.